[AppleScript] ログアウト時にサウンドをオフにする
ログアウトをフックする
前回紹介した [AppleScript] サウンドの音量を調節する の応用です。
ログアウト時にサウンドをオフにするスクリプトを作成してみます。
仕組みとしては、AppleScript でログアウトを検知するアプリケーションを作成し、それを常駐アプリとしてログイン時に起動させておきます。
手順
1.スクリプトエディタを開く
スクリプトエディタのパスは /Applications/Utilities/Script\ Editor.app/
です。
2.以下のコードを記述する
on quit set volume output volume 0 continue quit end quit
on quit
はアプリケーション終了時に呼び出されるハンドラです。
アプリケーション終了のタイミングでサウンドの出力音量を 0 に設定します。
ログアウト時はアプリケーションが終了となる性質を利用し、このハンドラでログアウトを検知します。
continue quit
はデフォルトの on quit ハンドラを呼び出すためのコマンドです。
これを記述しなければアプリケーションが終了しないのでご注意ください。
3.以下を実施しファイルを保存する
- ファイルフォーマットを アプリケーション にする
- ハンドラの実行後に終了しない にチェックを付ける
4.「システム環境設定」の「ユーザとグループ」を開き、「ログイン項目」に作成したアプリケーションを登録する
これで作成した常駐アプリがログイン時に起動されるようになります。
Dock に現れないようにする
このままだとアプリ起動中は Dock にこのアプリアイコンが表示されてしまいます。
ユーザー操作不要なアプリなので、Dock に現れないようにします。
plutil
コマンドを利用してアプリケーションの Info.plist に LSUIElement
の項目を追加します。
この値が true の場合、そのアプリケーションは Dock や強制終了ウィンドウに現れなくなります。
作成したアプリケーションが存在するディレクトリに移動し、以下のコマンドを実行します。
plutil -insert 'LSUIElement' -bool true logout_hook.app/Contents/Info.plist
さいごに
以上の方法で、ログアウト時にサウンドオフを実行する不可視なアプリケーションが、ログイン時に常駐起動されるようになります。
set volume output volume 0
を別なものに置き換えることで、ログアウト時の処理を変更することができます。
色々と試してみてはいかがでしょうか。
リンク
ミレニアム・ファルコン製作日記 #55
55 号 表紙
パーツ
成果
今回の作業は以下の 2 つでした。
- 上部外殻フレームを拡張する
- アクチュエーター・ブレースを取り付ける
- 穴メカを取り付ける
今回もフレームの追加です。
どんどん出来上がっていきます。
また、久しぶりに下部外殻プレートまわりの作業が発生しました。
以前取り付けた油圧アクチュエーターの上端にブレースを取り付けました。
写真の四角い枠になっている部分です。
きっとこれは補強用でしょう。
穴メカもついに取り付けました。
立体感が出てカッコイイ!
それではまた次回。
May the Force be with you!